home *** CD-ROM | disk | FTP | other *** search
/ The Fatted Calf / The Fatted Calf.iso / Applications / Communication / NewsBase / Source / INewsBase.h < prev    next >
Text File  |  1993-01-12  |  4KB  |  117 lines

  1. /*$Copyright:
  2.  * Copyright (C) 1992.5.22. Recruit Co.,Ltd. 
  3.  * Institute for Supercomputing Research
  4.  * All rights reserved.
  5.  * NewsBase  by ISR, Kazuto MIYAI, Gary ARAKAKI, Katsunori SUZUKI, Kok-meng Lue
  6.  *
  7.  * You may freely copy, distribute and reuse the code in this program under 
  8.  * following conditions.
  9.  * - to include this notice in the source code, if it is to be distributed 
  10.  *   with source code.
  11.  * - to add the file named "COPYING" within the code, which shall include 
  12.  *   GNU GENERAL PUBLIC LICENSE(*).
  13.  * - to display an acknowledgement in binary code as follows: "This product
  14.  *   includes software developed by Recruit Co.,Ltd., ISR."
  15.  * - to display a notice which shall state that the users may freely copy,
  16.  *   distribute and reuse the code in this program under GNU GENERAL PUBLIC
  17.  *   LICENSE(*)
  18.  * - to indicate the way to access the copy of GNU GENERAL PUBLIC LICENSE(*)
  19.  *
  20.  *   (*)GNU GENERAL PUBLIC LICENSE is stored in the file named COPYING
  21.  * 
  22.  * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED
  23.  * WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF
  24.  * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
  25. $*/
  26. /* INewsBase initializes the NewsBase Browser */
  27.  
  28.     /*
  29.      * The main objects in the NewsBase Browser module are:
  30.      *     INewsBase initializes the module.
  31.      *     NewsGroupTree holds the newsgroups in a tree structure.
  32.      *     INewsGroupTreeControl initializes and maintains the NewsGroupTree.
  33.      *     IDataGroupBrowser browses the newsgroup branches of the
  34.      *         NewsGroupTree.
  35.      *     IItemHeaderBrowser browses the headers of articles in a particular
  36.      *         newsgroup.
  37.      *     IMmEdit views a particular article.
  38.      */
  39.  
  40. #import <objc/Object.h>
  41. #import <objc/zone.h>
  42. #import <dpsclient/event.h>
  43. #import "IOrderedListD.h"
  44.  
  45. @interface INewsBase:Object
  46. {
  47.     NXZone    *newsbaseZone;
  48.  
  49.     id        oNewsReader;
  50.     id        oNewsGroupNXBrowser;
  51.     id        oArticleNXBrowser;
  52.     id        oBrowserSplitView;
  53.     id          iNntpIO;
  54.     id        oOpenNewsBasePanel;
  55.     id        oNntpServerNameField;
  56.     id        oGroupSelectionButton;
  57.     char    iNntpHost[128];
  58.     BOOL    iAllNewsFlag;
  59.     id        oGetArticleNumWindow;
  60.     id        oGetArticleNumField;
  61.     id        oPercentageView;
  62.     id        oArticleNumOKButton;
  63.     id        oArticleNumCancelButton;
  64.     id        oSplitView;
  65.     id        oNewsfolderDock;        // connected to ScrollView
  66.     id        oNewsfolderDockMatrix;        // IFolderDockMatrix
  67.     id        oNewsfolderScroll;        // ScrollView
  68.     id        oNewsfolderScrollMatrix;    // IFolderScrollMatrix
  69.     id        oNewsfolderScrollDocView;    // docView of ScrollView
  70.     id        oNewsgroupView;
  71. }
  72.  
  73. + (char *)label;
  74.  
  75. - init;
  76. - _setUpInterfaceWindow;
  77. - (char *)label;
  78. - show:sender;
  79. - terminateProc;
  80. - (BOOL)postArticle:(const char *)data length:(int)length;
  81. - (BOOL)sendArticle:(const char *)messageId;
  82. - newsGroupTreeControl;
  83.  
  84. - toggleNewsGroupBrowser:sender;
  85. - toggleArticleBrowser:sender;
  86. - setArticleBrowserMode;
  87. - setReadFlagToAll:sender;
  88.  
  89. /* article marking as read from view control panel */
  90. - markAllArticleAsRead:sender;
  91. - markAllArticleOfCell:sender;
  92.  
  93. /* newsgroup unsubscribe from view control panel */
  94. - unSubscribeGroup:sender;
  95. - unSubscribeGroupOfCell:sender;
  96.  
  97. /* reconnect to nntp server */
  98. - getNewArticles:sender;
  99.  
  100. - _nodeForSelectedCellInBrowser:kbrowser;
  101. - (int)openNewsBasePanel;
  102. - cancelConnect:sender;
  103. - okConnect:sender;
  104. - windowDidBecomeKey:sender;
  105. - windowDidResignKey:sender;
  106. - windowWillClose:sender;
  107.  
  108. - _saveWindowInfoToDefaultDB;
  109. - _readWindowInfoFromDefaultDBandSetupViews;
  110.  
  111. /* delegate method for NXSplitView */
  112. - splitView:sender resizeSubviews:(const NXSize *)oldSize;
  113. - splitView:sender getMinY:(NXCoord *)minY maxY:(NXCoord *)maxY
  114.                         ofSubviewAt:(int)offset;
  115.  
  116. @end
  117.